﻿/*----------------------------------------------------------------
    // Copyright (C) 2009 江苏华招网
    // 版权所有。 
    // 作者：李刚 
    //
    // 文件名：IBLL_CustomGoods.cs
    // 文件功能描述：有关自行采购目录的业务逻辑接口
    // 创建标识：李刚 2009-07-20
    //
    // 修改标识：
    // 修改描述：
    //
    // 修改标识：
    // 修改描述：
    //
    // 审核人：
    // 审核时间：
    // 审核说明：
 //----------------------------------------------------------------*/
using System;
using System.Collections.Generic;

using System.Text;
using HZ.DrugTrade.Model;

namespace HZ.DrugTrade.IBLL
{
    /// <summary>
    /// 有关自行采购目录的业务逻辑接口
    /// </summary>
    public interface IBLL_CustomGoods
    {


        /// <summary>
        /// 新增一条自定产品
        /// </summary>
        /// <param name="model"></param>
        /// <returns></returns>
        int AddCustomGoods(CustomGoods model);

        /// <summary>
        /// 更新自定义产品
        /// </summary>
        /// <param name="model"></param>
        /// <returns></returns>
        int UpdateCustomGoods(CustomGoods model);

        /// <summary>
        /// 删除自定义产品
        /// </summary>
        /// <param name="model"></param>
        /// <returns></returns>
        int DeleteCustomGoods(CustomGoods model);

        /// <summary>
        /// 根据ID获取实体
        /// </summary>
        /// <param name="customGoodsId"></param>
        /// <returns></returns>
        CustomGoods GetCustomGoodsByID(string customGoodsId);

        /// <summary>
        /// 分页查询自行添加产品
        /// </summary>
        /// <param name="model"></param>
        /// <param name="currentPage"></param>
        /// <param name="pageSize"></param>
        /// <param name="totalRecord"></param>
        /// <returns></returns>
        IList<HZ.DrugTrade.Model.View.CustomGoods> GetCustomGoodsByWhere(HZ.DrugTrade.Model.Query.CustomGoods model, int currentPage, int pageSize, out int totalRecord);

        /// <summary>
        /// 分页获取某医疗机构提交的产品信息
        /// </summary>
        /// <param name="hospitalID"></param>
        /// <returns></returns>
        IList<CustomGoods> GetCustomGoodsByHospital(string hospitalID, int currentPage, int pageSize, out int totalRecord);

        /// <summary>
        /// 分页获取所有已审核的产品列表（包括审核通过和拒绝通过的）
        /// </summary>
        /// <param name="currentPage"></param>
        /// <param name="pageSize"></param>
        /// <param name="totalRecord"></param>
        /// <returns></returns>
        IList<CustomGoods> GetAuditCustomGoods(int currentPage, int pageSize, out int totalRecord);

        /// <summary>
        /// 分页获取所有待审核的产品列表
        /// </summary>
        /// <param name="currentPage"></param>
        /// <param name="pageSize"></param>
        /// <param name="totalRecord"></param>
        /// <returns></returns>
        IList<CustomGoods> GetUnAuditCustomGoods(int currentPage, int pageSize, out int totalRecord);

        /// <summary>
        /// 获取剂型ID add by zdc 升级系统后
        /// </summary>
        /// <param name="medicineModelName"></param>
        /// <returns></returns>
        string getMedicineModelID(string medicineModelName);
        /// <summary>
        /// 获取生产企业ID add by zdc 系统升级后
        /// </summary>
        /// <param name="companyname"></param>
        /// <returns></returns>
        string Getcompanyid_SC(string companyname);
        /// <summary>
        ///  审核自定产品 并添加产品到产品库
        /// </summary>
        /// <param name="model"></param>
        /// <param name="goodsID"></param>
        /// <returns></returns>
        int AuditCustomGoods(CustomGoods model,out string goodsID);

        int AuditCustomGoods(CustomGoods model);
    }
}